package com.ride.dao;

import com.ride.model.Passenger;

/**
 * Interface zum Zugriff auf Mitfahrer.
 *
 * @version $LastChangedRevision: 15 $
 *          <p/>
 *          $LastChangedBy: marcel.menze@gmail.com $
 *          <p/>
 *          $LastChangedDate: 2011-04-03 13:43:25 +0000 (Sun, 03 Apr 2011) $
 */
public interface PassengerDao {

    /**
     * Ermittelt ein Mitfahrer anhand der ID.
     *
     * @param id ID
     * @return Passenger
     */
    Passenger findById(Long id);

    /**
     * Erzeugt einen neuen Mitfahrer.
     *
     * @param passenger Mitfahrer
     */
    void persist(Passenger passenger);

    /**
     * Aktaulisiert einen vorhandenen Mitfahrer.
     *
     * @param passenger Mitfahrer
     */
    void update(Passenger passenger);

    /**
     * Löscht einen Mitfahrer.
     *
     * @param passenger Mitfahrer
     */
    void delete(Passenger passenger);

}
